1. Field of the Invention
The present invention relates to integrated circuit input/output (I/O) buffers, and more particularly to techniques for minimizing the effects of switching noise on such buffers.
2. State of the Art
The high speeds now possible with integrated circuits have made switching noise and power supply stability important considerations. Because of the high speeds of I/O buffers and the large loads they drive, noise from simultaneously switching output buffers (SSOs) has a large effect on power supply stability. Power and ground lines in an integrated circuit have associated with them distributed inductances that may be modeled as lumped inductors. During switching of an output buffer from low to high, current is sourced through a power lead and its associated inductance at a changing rate. Change in current through an inductor produces a voltage across the inductor. Accordingly, "voltage droop" occurs in which the supply voltage falls below the nominal supply voltage for a period of time before recovering. Similarly, during a high to low transition, "ground bounce" occurs in which the ground voltage rises above the nominal ground voltage for a period of time before recovering.
Voltage droop and ground bounce are both the result of voltage spikes on the power network caused by logic transitions. Such voltage spikes have two adverse consequences. Because they reduce the operating voltage, voltage spikes delay circuit operation. More importantly, voltage spikes may be transmitted through to the output of I/O buffers whose outputs are not being switched and should remain stable, therefore resulting in erroneous switching. The transmitted voltage spikes are therefore manifested as switching noise.
The foregoing problem becomes particularly acute in the case of a large number simultaneously switching I/O buffers. In FIG. 1, for example, the buffer 13 represents ten simultaneously switching I/O buffers undergoing a high to low transition. Also connected to the power network are other unswitched I/O buffers, represented by the unswitched I/O buffer 15 whose output is low and the unswitched I/O buffer 17 whose output is high. When the ten simultaneously switching I/O buffers switch from high to low, a large current flows through the ground lead with its associated inductance to ground, producing on the ground lead a large voltage spike. This voltage spike is transmitted through to the outputs of the unswitched I/O buffers and may cause erroneous transitions to be observed by the circuit connected to these I/O buffers. The I/O buffer 15 with its static low output is particularly affected by the described high-to-low transition, whereas the I/O buffer 17 with its static high output is particularly affected by a low-to-high transition.
One possible solution to the problem of switching noise is to reduce power and ground pin inductance, for example by adding additional power and ground pins to the power network. This measure, however, leaves fewer pins available as I/O pins. Another alternative is to use a more expensive package, an option that may not be economically feasible or attractive.
Other possible solutions to the problem of switching noise are designed to reduce the rate of change of current through the power and ground pin inductances. U.S. Pat. No. 4,825,102 describes an output driver in which switching of the driving devices is controlled such that one turns off before the other conducts current. This limits the "crowbar" current that flows from V.sub.dd to V.sub.ss during switching. U.S. Pat. No. 4,827,159 describes an output driver that uses inverters with different switching thresholds to control switching of the driving devices. U.S. Pat. No. 4,825,099 describes the use of feedback and RC delays to limit the rise and fall time of driver-controlling signals. In particular, feedback is used to control the current available to charge up the driver's gate. U.S. Pat. No. 4,928,199 discloses an output driver that provides for many smaller current surges at different times using simple control circuitry. U.S. Pat. No. 4,925,101 discloses an output driver that uses a source follower to provide an extra current source. None of these prior solutions, however, is entirely satisfactory.